<%--
  Created by IntelliJ IDEA.
  User: lenovo
  Date: 2020/1/23
  Time: 10:12
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>用户管理</title>
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <link rel="stylesheet" href="../../layui/css/layui.css"  media="all">
    <!-- 注意：如果你直接复制所有代码到本地，上述css路径需要改成你本地的 -->
</head>
<script src="../../layui/layui.js" charset="utf-8"></script>
<script src="/js/jquery-3.4.1.js"></script>
<script src="<%=request.getContextPath()%>/js/common.js"></script>
<body style="padding: 10px;background-color: rgb(236,240,245);">
    <h1 style="margin-bottom: 20px;">用户管理</h1>
    <input id="editOption" value="${editOption}" style="display: none">
    <!-- 功能区+表格 -->
    <div style="background-color: white;">
        <div class="layui-row">
            <!-- 新增按钮 -->
            <div class="layui-col-xs1" style="padding-left: 10px;padding-top: 10px;font-size: 14px;">
                <a href="/jsp/userManage/userEdit.jsp">
                    <button type="button" class="layui-btn" style="font-size: 1rem;">
                        <i class="layui-icon layui-icon-add-1">新增</i>
                    </button>
                </a>
            </div>
            <!-- 搜索框 -->
            <div class="layui-col-xs3 layui-col-xs-offset8" style="padding-top: 10px;padding-right: 10px;">
                <div style="width: 208px;height: 30px;border: 1px solid black;float: right;padding-left: 5px;">
                    <input id="txt_queryCondition" placeholder="查找..." style="height: inherit;border: 0;"/>
                    <button type="button" class="layui-btn layui-btn-sm layui-bg-cyan" style="position: absolute;" onclick="queryUser()">
                        <i class="layui-icon layui-icon-search"></i>
                    </button>
                </div>
            </div>
        </div>

        <table class="layui-hide" id="tb_user" lay-filter="filter_user"></table>
        <!-- 头像框 -->
        <script type="text/html" id="bar_img">
            <img src="/img/defualt_headpotrait.png" style="width: 33px;border: 1px solid #E6E6E6;border-radius: 100%">
        </script>
        <!-- 表格工具列 -->
        <script type="text/html" id="bar_userEdit">
            <a class="layui-btn layui-btn-xs" lay-event="edit">
                <i class="layui-icon layui-icon-edit">修改</i>
            </a>
            <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">
                <i class="layui-icon layui-icon-close">删除</i>
            </a>
        </script>
    </div>
</body>
<script>

    $(function () {
        //页面加载完成判断是否是从编辑页面跳转过来的
        isShowSuccessPanel();
    });
    // 表格模块
    layui.use('table', function(){
        var table = layui.table;

        table.render({
            elem:'#tb_user',
            url:'/userManage/getUserListByPage.do',
            where:{
                queryCondition:$("#txt_queryCondition").val()
            },
            title: '用户数据表',
            cols: [[
                {field:'user_id', title:'ID',hide:true},
                {field:'img',hide:true},
                {toolbar: '#bar_img',width:64},
                {field:'dept_name', title:'部门'},
                {field:'real_name', title:'真实姓名'},
                {field:'user_name', title:'用户名'},
                {field:'role_name', title:'角色'},
                {field:'telephone', title:'电话'},
                {field:'salary', title:'工资'},
                {fixed: 'right', title:'操作', toolbar: '#bar_userEdit'}
            ]],
            page: { //支持传入 laypage 组件的所有参数（某些参数除外，如：jump/elem） - 详见文档
                layout: ['limit', 'count', 'prev', 'page', 'next', 'skip','refresh'], //自定义分页布局
                groups: 5, //只显示 1 个连续页码
                first: false, //不显示首页
                last: false //不显示尾页
            },
            done: function(res, curr, count) {
                //如果是异步请求数据方式，res即为你接口返回的信息。
                //如果是直接赋值的方式，res即为：{data: [], count: 99} data为当前页数据、count为数据总长度
                var data = res.data;//表格数据数组
                var trList = $("#tb_user").next().find(".layui-table-body").find("tr");
                //遍历表格数据，设置头像
                var len = data.length;
                for (i = 0; i < len; i++){

                    var $curr_imgTd = $(trList[i].childNodes[2]);//当前行的头像列的jQuery对象
                    var img = data[i].img;
                    if (img != null){
                        $curr_imgTd.children().html("<img src='data:image/png;base64,"+img+"' style='width: 33px;height:33px;border: 1px solid #E6E6E6;border-radius: 100%'>");
                    }
                }
            }

        });

        //监听行工具事件
        //注：tool 是工具条事件名，filter_role 是 table 原始容器的属性 lay-filter="对应的值"
        table.on('tool(filter_user)', function(obj){

            var data = obj.data;//当行数据
            var event = obj.event;//按钮类型
            if(event == 'del'){

                layer.confirm('确定删除用户么？', function(index){

                    $.ajax({
                        url:'/userManage/deleteUserById.do',
                        data:{
                            user_id:data.user_id
                        },
                        dataType:'json',
                        error:function (xmlHttpRequest, textStatus, errorThrown) {//请求失败回调函数

                            layer.msg("删除失败！")
                        }
                    });
                    obj.del();//删除对应行（tr）的DOM结构，并更新缓存
                    layer.close(index);//关闭弹出框
                });
            }else if(event == 'edit'){

                location.href = "/userManage/toUserEditPage.do?user_id="+data.user_id;
            }
        });
    });

    /**
     * 条件查询用户信息
     */
    function queryUser() {
        //重载表格
        layui.table.reload('tb_user', {
            url: '/userManage/getUserListByPage.do'
            ,where: {
                queryCondition:$("#txt_queryCondition").val()
            }
        });
    }
</script>
</html>
